body, p, td, th {
  font-family: 'Helvetica';
  font-size: 10pt;
}

table.bordered {
  border: 1px solid black;
  border-collapse: collapse;
  border-spacing: 0;
}

table.bordered > tr > td, table.bordered > tr > th,
    table.bordered > tbody > tr > td, table.bordered > tbody > tr > th {
  vertical-align: top;
  border: 1px solid black;
}

th.rotate {
  vertical-align: bottom;
  height: 50px;
  white-space: nowrap;
}

th.rotate > div {
  transform: rotate(-90deg) translate(-20px, 0px);
  width: 40px;
}

#grid td, #grid th {
  padding: 3px;
}

#grid td.cell {
  line-height: 0;
  padding: 0;
}

#grid .subject {
  font-weight: bold;
  font-size: large;
  vertical-align: middle;
  border-right: 0;
}

#grid .summary {
  border-left: 0;
}

#grid .clickable {
  cursor: pointer;
}

#viewer {
  position: fixed;
  top: 10px;
  right: 10px;
}

#viewer > div {
  min-width: 500px;
  max-width: 800px;
}

#viewer table {
  border: 1px solid black;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

#viewer td {
  vertical-align: top;
  border: 1px solid black;
}

#viewer td > i.material-icons {
  font-size: 20px;
  cursor: pointer;
}
